Color image reproducing devices such as a color electric photographic copy machines, systems of processing silver halide color photographic light-sensitive materials, cathode ray tubes, and systems of printing are all well known in the art. A color scanner is a device used to detect the color images. The scanner outputs a signal in the form of RGB (Red, Green, and Blue) signals for the color image; however, these signals do not provide any absolute colorimetric information; they indicate only relative values; i.e. the color is more (or less) reddish (greenish, or bluish).
To handle color precisely, some physical definition and values are needed. According to CIE definitions, Color Matching Functions, which correspond almost exactly to the spectral sensitivities of the human eyes, are used to calculate tristimulus values, which are represented by the three letters X, Y and Z, and which are called color values. These values represent the visual perception and are the basis for any color manipulations.
A device and method which can obtain accurate color values, which are precisely in accord with the visual perceptions of the human eye, are highly desirable.
In the prior art, there were two approaches for obtaining color values. One is to adjust the total scanner spectral sensitivities to one set of linear transformations of human sensitivities (the Luther condition), the other is to establish the relationship between the input scanner signals (RGB) and the color values, such as XYZ, CIELUV, CIELAB, or any other three or more values which can represent the total color.
FIG. 1 shows components of human vision and machine vision. In human vision, a light reflects from object 2 and reaches human eye 3. Analogously, in the machine vision (scanner), artificial light 4 reflects on object 2 and reaches detector 7 through lenses 5 and filters 6.
If the scanner has the same spectral response as the human eye, the signals from the scanner could be transformed into tristimulus values (XYZ) by a matrix and could be changed to another color of the desired values. Two examples are shown in FIG. 2; one is the Color Matching Functions which have been defined by CIE (Commission Internationale de l'Eclairage) to calculate the standard color values (XYZ or tristimulus values). These are used for representation of colors by physical values instead of names, such as blue, green, yellow, etc. The other is its linear transformation to provide one peak and the narrowest curve. One can calculate the color values from the scanner signals by a simple linear matrix multiplication.
However, practically speaking, matching the total sensitivities to the Luther condition is very difficult because bright illumination (especially fluorescent light) tends to have sharp spikes in its spectral power distribution although the desired total sensitivity curves are smooth. The sensitivities of CCD (charged coupled device), which is often used as a sensor, has jagged spectral sensitivity curves. Theoretically these shapes of the spectral curves can be compensated for by filters, but making filters which cancel the spikes and jagged spectral sensitivities is very difficult. Even if such filters are created, they may be ineffective because reducing the strong spikes will make the illumination much dimmer. Therefore, in practice, it is almost impossible to adapt the total sensitivities of the scanner to coincide with the Luther condition. In addition, a scanner matching the Luther condition has a bad chroma S/N ratio because two of the three sensitivities in FIG. 2 are so close (in sense of the low S/N ratio, three monochromatic sensitivities are ideal, but of course, this kind of scanner is far from the Luther condition).
On the other hand, regressions to establish the relationship between scanner signals and color values have been attempted. However, this relationship is essentially non-linear and there is no way to pick up the non-linear terms on rational basis; it is very difficult to fit the 3 dimensional relationship with non-linear terms chosen at random.